The present invention relates to data traffic classification within a broadband communications network, and more specifically to a staged traffic classification mechanism for dynamic adjustment of traffic classification at different stages of a data traffic flow.
As society, in general, becomes increasingly reliant on data communications networks to conduct a variety of business activities, including business communications (e.g., email, teleconferencing, video conferencing, e-meetings, voice/video over IP, etc.), business transactions (e.g., corroborative document drafting via e-meeting or video conference) and other business activities, as well as personal activities, including personal communications (e.g., email, voice/video over IP, social networking, etc.) and entertainment (e.g., multimedia streaming, on-line gaming, multimedia sharing, etc.), QoS and other bandwidth requirements become increasingly significant. Moreover, this growing base of consumer and business activities via data communications networks drives an increasing diversity of applications being used in a typical data network. Also, as capacity requirements of different users (and for that matter of the same users) fluctuate depending on time day and types of applications in use, the accuracy of traffic forecasts is diminished, and inaccurate forecasts can lead to negative effects, such as traffic congestion, slow response times, or even data loss. Accordingly, communication engineers continually face the challenges of optimizing use of network capacity and ensuring reliable bandwidth availability to a diverse set of users with varying traffic requirements.
Moreover, modern satellite communications systems provide an accessible, pervasive and reliable communications network for supporting a variety of data communications, such as voice, video, and data traffic. These satellite communications systems have emerged as a viable option to terrestrial communications systems, particularly in the arena of Internet access and business or corporate networking. As such, satellite systems become increasingly relied on for corporate networking and business and personal internet access, and as the popularity of the Internet continues to grow in unparalleled fashion, the communications industry has focused on improving user response time, and bandwidth and QoS guarantees. Additionally, although satellite based communications services address the problems of providing universal Internet access and other communications services, in that satellite coverage areas are not hindered by traditional terrestrial infrastructure obstacles, the deployment of satellite based access services is tempered by the challenges of minimizing delay and increasing throughput in a bandwidth constrained system. Further, satisfying QoS and other bandwidth requirements over such bandwidth constrained systems introduces additional challenges.
For example, in a shared bandwidth network with multiple remote nodes, where multiple remote nodes access public and/or remote private networks (e.g., the Internet and remote corporate networks) through one or more aggregation nodes, where quality of service is required on every link of the network in each direction (e.g., on an application-specific or communications session-specific basis), unique challenges are presented with respect to early and accurate traffic classification to meet the QoS requirements. Particularly, considering various factors existing with current applications in a network environment, it is difficult to efficiently and accurately associate packets of a traffic flow with the respective application or communications sessions for appropriate quality of service handling. Such factors include the diversity of applications in use in a typical network, the inability to trust the end user computing platform, the disguising of peer to peer traffic on known traffic ports, and the quickness in the change of application signatures. For example, it is difficult to utilize existing DiffServ and IntServ methods for flow classification, to provide users with a good experience that prioritizes interactive and conversational traffic over traffic classes such as streaming and bulk, to keep up with the changes in application signatures to continue to make the proper packet classification decisions, to provide a cost effective solution at smaller, less expensive remote network nodes, and to make timely decisions such that sessions are not delayed by the classification process. Further, while various solutions exist that may satisfy some of the requirements, engineers have yet to develop a solution that addresses all such requirements.
There are a number of network services that require packet classification, such as routing, access-control in firewalls, policy-based routing, provision of differentiated qualities of service, and traffic billing. Further, the increasing use of the Internet for consumer applications with real-time constraints (e.g., media streaming, gaming, video calls, etc.), and for business and commercial purposes, introduces an economic incentive for providing service differentiation to meet respective QoS requirements and improve the customer experience. In order to provide for such service and application differentiation, it becomes necessary to determine the session with which an arriving packet is associated, in order to determine appropriate handling for the packet (e.g., priority or what class of service it should receive—QoS). In order to best satisfy such QoS requirements, it becomes important and more efficient to classify data packets of a particular application or communications session as early as possible in the pendency of the session. When looking at data traffic in today's communication networks (e.g., the Internet), a predominant amount of the source data connections or sessions originate at the user device (e.g., a user PC or other type of user terminal). The traffic classification, therefore, ideally must start at the network node of such user terminal devices. Current routers, for example, may perform a static traffic classification based on information within the TCP or UDP header of an IP packet (e.g., a port-based classification based on a port identifier of the header). A problem arises, however, in that there is a large realm of applications that tend to transmit data traffic via dynamic or ephemeral ports. In addition, a large number of applications tend to reuse existing ports (traditionally used for well-known applications) for other applications that behave differently than the well-known applications that traditionally use such ports (e.g., cloud backup over port 443 and video streaming over port 80). In such cases, a terminal may not know via which port data packets of such an application will arrive, and thus a static traffic classification generally will be unreliable or inaccurate.
Further, various network devices exist which are capable of performing a deep packet inspection (DPI) for traffic classification. Such DPI devices, however, require relatively extensive processing power and complex processing capabilities (e.g., hardware assists) in order to analyze the payload of a data packet to accurately determine the appropriate traffic classification. Such devices, however, are relatively large and expensive, and thus it becomes impractical to deploy such devices at the terminal nodes, where a session originates. Instead, such devices are accordingly deployed at data centers and network hubs, where they enable a service provider to perform traffic classification and prioritization, and even traffic shaping, for the service provider network. Being deployed at the data centers and network hubs, however, renders such DPI devices ineffective at providing a classification function at the early stages of a session.
What is needed, therefore, is a system and method to address the challenges of providing for traffic classification at the early stages of an application or communications session to achieve efficient, robust, reliable and flexible broadband services, which meet QoS and other bandwidth requirements, in such shared bandwidth networks.